<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8">
<!-- whatsnew510.qdoc -->
  <title>What's New in Qt 5.10 | Qt 5.14</title>
  <link rel="stylesheet" type="text/css" href="style/offline-simple.css" />
  <script type="text/javascript">
    document.getElementsByTagName("link").item(0).setAttribute("href", "style/offline.css");
    // loading style sheet breaks anchors that were jumped to before
    // so force jumping to anchor again
    setTimeout(function() {
        var anchor = location.hash;
        // need to jump to different anchor first (e.g. none)
        location.hash = "#";
        setTimeout(function() {
            location.hash = anchor;
        }, 0);
    }, 0);
  </script>
</head>
<body>
<div class="header" id="qtdocheader">
  <div class="main">
    <div class="main-rounded">
      <div class="navigationbar">
        <table><tr>
<td ><a href="index.html">Qt 5.14</a></td><td >What's New in Qt 5.10</td></tr></table><table class="buildversion"><tr>
<td id="buildversion" width="100%" align="right">Qt 5.14.2 Reference Documentation</td>
        </tr></table>
      </div>
    </div>
<div class="content">
<div class="line">
<div class="content mainContent">
<div class="sidebar">
<div class="toc">
<h3><a name="toc">Contents</a></h3>
<ul>
<li class="level1"><a href="#new-features-in-qt-5-10">New Features in Qt 5.10</a></li>
<li class="level2"><a href="#qt-connectivity-module">Qt Connectivity Module</a></li>
<li class="level2"><a href="#qt-graphical-effects-module">Qt Graphical Effects Module</a></li>
<li class="level2"><a href="#qt-gui-module">Qt GUI Module</a></li>
<li class="level2"><a href="#qt-network-module">Qt Network Module</a></li>
<li class="level2"><a href="#qt-quick-module">Qt Quick Module</a></li>
<li class="level2"><a href="#qt-quick-controls-2-module">Qt Quick Controls 2 Module</a></li>
<li class="level2"><a href="#qt-serialbus-module">Qt SerialBus Module</a></li>
<li class="level2"><a href="#qt-virtual-keyboard-module">Qt Virtual Keyboard Module</a></li>
<li class="level2"><a href="#qt-webengine-module">Qt WebEngine Module</a></li>
<li class="level2"><a href="#qt-widgets-module">Qt Widgets Module</a></li>
<li class="level1"><a href="#new-modules">New Modules</a></li>
<li class="level1"><a href="#technology-preview-modules">Technology Preview Modules</a></li>
<li class="level1"><a href="#deprecated-functionality">Deprecated Functionality</a></li>
<li class="level1"><a href="#list-of-api-changes">List of API Changes</a></li>
<li class="level1"><a href="#additions-to-other-qt-5-releases">Additions to Other Qt 5 Releases</a></li>
</ul>
</div>
<div class="sidebar-content" id="sidebar-content"></div></div>
<h1 class="title">What's New in Qt 5.10</h1>
<span class="subtitle"></span>
<!-- $$$whatsnew510.html-description -->
<div class="descr"> <a name="details"></a>
<a name="new-features-in-qt-5-10"></a>
<h2 id="new-features-in-qt-5-10">New Features in Qt 5.10</h2>
<a name="qt-connectivity-module"></a>
<h3 id="qt-connectivity-module">Qt Connectivity Module</h3>
<ul>
<li>The UWP Bluetooth and Bluetooth LE backends can now be used on Windows 10.</li>
</ul>
<a name="qt-graphical-effects-module"></a>
<h3 id="qt-graphical-effects-module">Qt Graphical Effects Module</h3>
<ul>
<li>Added support for effects in core profile OpenGL contexts.</li>
</ul>
<a name="qt-gui-module"></a>
<h3 id="qt-gui-module">Qt GUI Module</h3>
<ul>
<li>Added the cross-platform Vulkan enablers, <a href="../qtgui/qvulkaninstance.html">QVulkanInstance</a>, <a href="../qtgui/qwindow.html">QWindow</a> with type VulkanSurface, and <a href="../qtgui/qvulkanwindow.html">QVulkanWindow</a>. These enablers are for Windows, Linux (xcb), and Android (level 23+).</li>
<li>Added new flags and functions to <a href="../qtgui/qsurfaceformat.html">QSurfaceFormat</a> and <a href="../qtwidgets/qopenglwidget.html">QOpenGLWidget</a>, to request sRGB-capable default/backing framebuffers.</li>
<li>Added the cross-platform enablers for OpenGL ES 3.2 API, which are now accessible through <a href="../qtgui/qopenglextrafunctions.html">QOpenGLExtraFunctions</a>.</li>
<li>Added support for more than 2 Gigabyte of pixel data in <a href="../qtgui/qimage.html">QImage</a>.</li>
<li>Added <a href="../qtgui/qfont.html#StyleStrategy-enum">QFont::PreferNoShaping</a> style strategy.</li>
</ul>
<a name="qt-network-module"></a>
<h3 id="qt-network-module">Qt Network Module</h3>
<ul>
<li>Upgraded OpenSSL back-end to use library v1.1&#x2e;</li>
<li>Persistent store of HSTS policies in QNAM (<a href="../qtcore/qsettings.html">QSettings</a>-based).</li>
</ul>
<a name="qt-quick-module"></a>
<h3 id="qt-quick-module">Qt Quick Module</h3>
<ul>
<li>Added a shapes plugin, providing a Shape type under <a href="../qtquick/qtquick-module.html">QtQuick</a>.Shapes 1.0, which enables adding stroked and filled paths into Qt Quick scenes. Such shapes are rendered either by generating geometry or by using the GL_NV_path_rendering extension.</li>
<li>Added the Qt.labs.handlers plugin (tech. preview), providing <a href="../qtquick/qml-qtquick-taphandler.html">TapHandler</a>, <a href="../qtquick/qml-qtquick-pinchhandler.html">PinchHandler</a>, and <a href="../qtquick/qml-qtquick-draghandler.html">DragHandler</a>. These are lightweight objects for handling events from the mouse or the touchscreen in a device-agnostic way.<p><b>Note: </b>The plugin is available as a technology preview so it could could change in future releases.</p></li>
<li>Added support for multi-sample framebuffers to <a href="../qtquick/qquickitem.html">QQuickItem</a> layers using the layer.samples property.</li>
<li>Added <a href="../qtquick/qml-qtquick-text.html#font.kerning-prop">font.kerning</a> and <a href="../qtquick/qml-qtquick-text.html#font.preferShaping-prop">font.preferShaping</a> properties for advanced control over the font shaping subsystem.</li>
<li>Added <a href="../qtquick/qml-qtquick-text.html#advance-prop">advance</a> property to Text to retrieve the typographical advance width.</li>
<li>Added Image element to enable direct loading of ETC1 and ETC2 compressed textures from <code>.pkm</code> files on platforms where ETC1/2 are supported.</li>
</ul>
<a name="qt-quick-controls-2-module"></a>
<h3 id="qt-quick-controls-2-module">Qt Quick Controls 2 Module</h3>
<ul>
<li>Added support for effects in core profile OpenGL contexts.</li>
<li>Added new QML types: <a href="../qt3d/qml-qt3d-input-action.html">Action</a>, <a href="../qtquickcontrols/qml-qtquick-controls2-actiongroup.html">ActionGroup</a>, and <a href="../qtlabsplatform/qml-qt-labs-platform-menubar.html">MenuBar</a>.</li>
<li>Added these new styles:<ul>
<li>The Fusion style offers a platform agnostic desktop-oriented look'n'feel.</li>
<li>The Imagine style is based on image assets that can be provided using a predefined naming convention.</li>
</ul>
</li>
<li>Added actions support for it in:<ul>
<li>buttons, delegates, menus,</li>
<li>exclusive button groups,</li>
<li>nested menus, and cascading sub-menus.</li>
</ul>
</li>
<li>Added support for:<ul>
<li>wrapping <a href="../qtquickcontrols/qml-qtquick-controls2-spinbox.html">SpinBox</a>,</li>
<li>propagating palettes (only Fusion &amp; Imagine styles for now),</li>
<li>specifying the default font and palette in qtquickcontrols2.conf,</li>
<li>and preliminary support for mnemonics in <a href="../qtlabsplatform/qml-qt-labs-platform-menuitem.html">MenuItem</a> (only shortcut functionality).</li>
</ul>
</li>
<li>Added the following new members:<ul>
<li><a href="../qtquickcontrols/qml-qtquick-controls2-tabbar.html#index-attached-prop">TabBar::index</a>, <a href="../qtquickcontrols/qml-qtquick-controls2-tabbar.html#tabBar-attached-prop">tabBar</a>, and <a href="../qtquickcontrols/qml-qtquick-controls2-tabbar.html#position-prop">position</a> attached properties.</li>
<li><a href="../qtquickcontrols/qml-qtquick-controls2-dialog.html#applied-signal">Dialog::applied</a>(), <a href="../qtquickcontrols/qml-qtquick-controls2-dialog.html#reset-signal">reset</a>(), <a href="../qtquickcontrols/qml-qtquick-controls2-dialog.html#discarded-signal">discarded</a>(), and <a href="../qtquickcontrols/qml-qtquick-controls2-dialog.html#helpRequested-signal">helpRequested</a>() signals.</li>
<li><a href="../qtquickcontrols/qml-qtquick-controls2-dialog.html#standardButton-method">Dialog::standardButton</a>() method.</li>
<li><a href="../qtquickcontrols/qml-qtquick-controls2-stackview.html#empty-prop">StackView::empty</a> property.</li>
<li><a href="../qtquickcontrols/qml-qtquick-controls2-menu.html#popup-method">Menu::popup</a>() and <a href="../qtquickcontrols/qml-qtquick-controls2-menu.html#dismiss-method">dismiss</a>() methods.</li>
<li><a href="../qtquickcontrols/qml-qtquick-controls2-menu.html#actionAt-method">Menu::actionAt</a>(), <a href="../qtquickcontrols/qml-qtquick-controls2-menu.html#addAction-method">addAction</a>(), <a href="../qtquickcontrols/qml-qtquick-controls2-menu.html#insertAction-method">insertAction</a>(), <a href="../qtquickcontrols/qml-qtquick-controls2-menu.html#removeAction-method">removeAction</a>(), and <a href="../qtquickcontrols/qml-qtquick-controls2-menu.html#takeAction-method">takeAction</a>() methods.</li>
<li><a href="../qtquickcontrols/qml-qtquick-controls2-menu.html#menuAt-method">Menu::menuAt</a>(), <a href="../qtlabsplatform/qml-qt-labs-platform-menu.html#addMenu-method">addMenu</a>(), <a href="../qtlabsplatform/qml-qt-labs-platform-menu.html#insertMenu-method">insertMenu</a>(), <a href="../qtlabsplatform/qml-qt-labs-platform-menu.html#removeMenu-method">removeMenu</a>(), and <a href="../qtquickcontrols/qml-qtquick-controls2-menu.html#takeMenu-method">takeMenu</a>() methods.</li>
<li><a href="../qtquickcontrols/qml-qtquick-controls2-menu.html#count-prop">Menu::count</a> and <a href="../qtquickcontrols/qml-qtquick-controls2-menu.html#currentIndex-prop">currentIndex</a> properties.</li>
<li><a href="../qtlabsplatform/qml-qt-labs-platform-menuitem.html#menu-prop">MenuItem::menu</a> property.</li>
<li>Container::removeItem(Item) and takeItem(int) methods (<a href="../qtquickcontrols/qml-qtquick-controls2-tabbar.html">TabBar</a> and <a href="../qtquickcontrols/qml-qtquick-controls2-swipeview.html">SwipeView</a>).</li>
<li><a href="../qtquickcontrols/qml-qtquick-controls2-popup.html#enabled-prop">Popup::enabled</a>, <a href="../qtquickcontrols/qml-qtquick-controls2-popup.html#mirrored-prop">mirrored</a>, and <a href="../qtquickcontrols/qml-qtquick-controls2-popup.html#opened-signal">opened</a> properties.</li>
<li><code>horizontal</code> and <code>vertical</code> properties to all controls that have the <code>orientation</code> property: <a href="../qtquickcontrols/qml-qtquick-controls2-rangeslider.html">RangeSlider</a>, <a href="../qtquickcontrols/qml-qtquick-controls2-slider.html">Slider</a>, <a href="../qtquickcontrols/qml-qtquick-controls2-scrollbar.html">ScrollBar</a>, <a href="../qtquickcontrols/qml-qtquick-controls2-scrollindicator.html">ScrollIndicator</a>, and <a href="../qtquickcontrols/qml-qtquick-controls2-swipeview.html">SwipeView</a>.</li>
</ul>
</li>
<li>Other improvements:<ul>
<li>Added support for specifying a transition for <a href="../qtquickcontrols/qml-qtquick-controls2-stackview.html#clear-method">StackView::clear</a>().</li>
<li>Enabled support for <a href="../qtquickcontrols/qml-qtquick-controls2-applicationwindow.html#activeFocusControl-attached-prop">ApplicationWindow::activeFocusControl</a> attached property for a plain <a href="../qt3d/qt3dextras-module.html#window">Window</a>.</li>
<li>Enabled background dimming for popups without <a href="../qtquickcontrols/qml-qtquick-controls2-applicationwindow.html">ApplicationWindow</a>.</li>
<li>Updated Material style for <a href="../qtquickcontrols/qml-qtquick-controls2-dialogbuttonbox.html">DialogButtonBox</a> to use the Android button layout.</li>
<li>Updated default style <a href="../qtquickcontrols/qml-qtquick-controls2-slider.html">Slider</a> and <a href="../qtquickcontrols/qml-qtquick-controls2-rangeslider.html">RangeSlider</a> to visually indicate the progress/range.</li>
</ul>
</li>
</ul>
<a name="qt-serialbus-module"></a>
<h3 id="qt-serialbus-module">Qt SerialBus Module</h3>
<ul>
<li>Added local echo flag to <a href="../qtserialbus/qcanbusframe.html">QCanBusFrame</a> to mark frames that are sent from the local system to the CAN bus.</li>
</ul>
<a name="qt-virtual-keyboard-module"></a>
<h3 id="qt-virtual-keyboard-module">Qt Virtual Keyboard Module</h3>
<ul>
<li>Added the keyboard layouts for Hebrew, Serbian, Hungarian, Czech, Croatian, Bulgarian, Greek, Estonian, and Dutch.</li>
<li>Added handwriting support for Farsi, Arabic, and CJK (Chinese/Japanese/Korean).</li>
<li>Added new component (<a href="../qtvirtualkeyboard/qml-qtquick-virtualkeyboard-inputmodekey.html">InputModeKey</a>) for input mode switch.</li>
</ul>
<a name="qt-webengine-module"></a>
<h3 id="qt-webengine-module">Qt WebEngine Module</h3>
<ul>
<li>Updated to be based on Chromium 60.</li>
<li>Added pause/resume functionality to download items.</li>
<li>Added settings for blocking JavaScript focus and hiding scrollbars.</li>
<li>Updated <a href="../qtwebengine/qwebenginepage.html">QWebEnginePage</a> with more WebActions, which were supported by QWebPage earlier.</li>
<li>Added QWebEnginePage::download for triggering downloads.</li>
</ul>
<a name="qt-widgets-module"></a>
<h3 id="qt-widgets-module">Qt Widgets Module</h3>
<ul>
<li>Added support for embedding a window into a <a href="../qtwidgets/qwidget.html">QWidget</a> on Android using <a href="../qtwidgets/qwidget.html#createWindowContainer">QWidget::createWindowContainer</a>().</li>
<li>Added support for rendering and reading back (grabbing) offscreen content using <a href="../qtwidgets/qopenglwidget.html">QOpenGLWidget</a>.</li>
<li>Added <code>AA_DisableWindowContextHelpButton</code> attribute that prevents the automatic &quot;What's this&quot; button on dialogs on Windows.</li>
<li>Added <code>tabStopDistance</code> property in <a href="../qtgui/qtextoption.html">QTextOption</a>, <a href="../qtwidgets/qtextedit.html">QTextEdit</a>, and <a href="../qtwidgets/qplaintextedit.html">QPlainTextEdit</a>.</li>
<li>Added <code>selectionEnd()</code>, <code>selectionLength()</code> to <a href="../qtwidgets/qlineedit.html">QLineEdit</a>, complementing <code>selectionStart()</code>.</li>
<li>Added <a href="../qtwidgets/qinputdialog.html#doubleStep-prop">QInputDialog::setDoubleStep</a> to enable changing of the step amount for <code>getDouble()</code>.</li>
<li>Added <code>isPersistentEditorOpen()</code> to <a href="../qtwidgets/qabstractitemview.html">QAbstractItemView</a>, <a href="../qtwidgets/qtreewidget.html">QTreeWidget</a>, <a href="../qtwidgets/qtablewidget.html">QTableWidget</a>, and <a href="../qtwidgets/qlistwidget.html">QListWidget</a>.</li>
<li>Added new <a href="../qtwidgets/qstyle.html#StyleHint-enum">QStyle::StyleHint</a>, <code>SH_TitleBar_ShowToolTipsOnButtons</code>.</li>
<li>Added support for specifying custom internal texture formats in <a href="../qtwidgets/qopenglwidget.html">QOpenGLWidget</a>.</li>
</ul>
<a name="new-modules"></a>
<h2 id="new-modules">New Modules</h2>
<ul>
<li><a href="../qtnetworkauth/qtnetworkauth-index.html">Qt Network Authorization</a> - Provides support for OAuth1 and OAuth2.</li>
<li><a href="../qtspeech/qtspeech-index.html">Qt Speech</a> - Enables text-to-speech in Qt Applications.</li>
</ul>
<p>These modules were previously released as technology preview and are now fully supported Qt add-on modules.</p>
<a name="technology-preview-modules"></a>
<h2 id="technology-preview-modules">Technology Preview Modules</h2>
<ul>
<li><a href="../qtremoteobjects/qtremoteobjects-index.html#qt-remote-objects">Qt Remote Objects</a> (TP2) - Sharing <a href="../qtcore/qobject.html">QObject</a> interfaces (signals, slots, and properties) between processes or devices.</li>
<li><a href="webgl.html">Qt WebGL</a> Streaming Plugin - Enables streaming Qt application to a web browser over the network.</li>
</ul>
<a name="deprecated-functionality"></a>
<h2 id="deprecated-functionality">Deprecated Functionality</h2>
<ul>
<li>Qt Script</li>
</ul>
<p>Deprecated modules are still included in Qt 5.10, but are considered for removal in future releases.</p>
<a name="list-of-api-changes"></a>
<h2 id="list-of-api-changes">List of API Changes</h2>
<p>The pages below contain a list of API changes in Qt 5.10:</p>
<ul>
<li><a href="newclasses510.html">New Classes and Functions in Qt 5.10</a></li>
<li><a href="obsoleteclasses.html">Obsolete Classes</a></li>
</ul>
<a name="additions-to-other-qt-5-releases"></a>
<h2 id="additions-to-other-qt-5-releases">Additions to Other Qt 5 Releases</h2>
<ul>
<li><a href="whatsnew59.html">What's New in Qt 5.9</a></li>
<li><a href="whatsnew58.html">What's New in Qt 5.8</a></li>
<li><a href="whatsnew57.html">What's New in Qt 5.7</a></li>
<li><a href="whatsnew56.html">What's New in Qt 5.6</a></li>
<li><a href="whatsnew55.html">What's New in Qt 5.5</a></li>
<li><a href="whatsnew54.html">What's New in Qt 5.4</a></li>
<li><a href="whatsnew53.html">What's New in Qt 5.3</a></li>
<li><a href="whatsnew52.html">What's New in Qt 5.2</a></li>
<li><a href="whatsnew51.html">What's New in Qt 5.1</a></li>
<li><a href="whatsnew50.html">What's New in Qt 5.0</a></li>
</ul>
</div>
<!-- @@@whatsnew510.html -->
        </div>
       </div>
   </div>
   </div>
</div>
<div class="footer">
   <p>
   <acronym title="Copyright">&copy;</acronym> 2020 The Qt Company Ltd.
   Documentation contributions included herein are the copyrights of
   their respective owners.<br/>    The documentation provided herein is licensed under the terms of the    <a href="http://www.gnu.org/licenses/fdl.html">GNU Free Documentation    License version 1.3</a> as published by the Free Software Foundation.<br/>    Qt and respective logos are trademarks of The Qt Company Ltd.     in Finland and/or other countries worldwide. All other trademarks are property
   of their respective owners. </p>
</div>
</body>
</html>
